from dataclasses import dataclass


@dataclass
class Config:
    NUM_CLASSES: int = 4  # 类别数 本实验是4类
    # IMAGE_HEIGHT: int = 96
    # IMAGE_WIDTH: int = 96
    # IMAGE_HEIGHT: int = 72
    # IMAGE_WIDTH: int = 72#imception error
    # IMAGE_HEIGHT: int = 64
    # IMAGE_WIDTH: int = 64
    # IMAGE_HEIGHT: int = 32
    # IMAGE_WIDTH: int = 32
    IMAGE_HEIGHT: int = 128
    IMAGE_WIDTH: int = 128
    # IMAGE_HEIGHT: int = 144
    # IMAGE_WIDTH: int = 144
    DROP_OUT: float = 0.0
    COLOR_CHANNELS = 3


"""
[[ModelLayer,*args],[ModelType,*args]]
"""


class ModelLayers:
    Conv2D: int = 0
    Activation: int = 1
    MaxPooling2D: int = 2
    Dropout: int = 3
    Flatten: int = 4
    Dense: int = 5
    ConvBase: int = 6
    BatchNormalization: int = 7
    Concatenate: int = 8
    Average: int = 9
    Maximum: int = 10


if __name__ == '__main__':
    for item in ModelLayers.__dict__:
        if item[0] == '_':
            continue
        print(item,ModelLayers.__dict__.get(item))

